The statements in this section merely provide background information related to the present disclosure and may not constitute prior art.
When a conventional video compression technique such as H.264/AVC is to perform a predictive encoding on a motion vector obtained by a block based motion estimation, a median of motion vectors of neighboring blocks of a block to be encoded is used to determine a predicted motion vector, and a variable-length encoding is performed on a differential between a motion vector to be encoded and the predicted motion vector to compress the motion vector.
ITU-T VCEG (International Telecommunications Union-Telecommunication Video Coding Expert Group) has studied a better performance codec by the name of KTA (Key Technical Area) based on existing H.264/AVC, and used a method called MVComp (Competition-based Motion Vector Coding) to improve the existing motion vector encoding method of H. 264/AVC.
MVComp is to have a number of predicted motion vector candidates and select one that produces a least differential between a current motion vector and an acquired motion vector after a prediction to supply a decoder with information of the selected predicted motion vector candidate, achieving an improvement in encoding the compression efficiency by 5% compared to that of existing H.264/AVC. However, MVComp has a drawback of an increased quantity of indexing side information to be transmitted to the decoder as the number of predicted motion vector candidates increases.
In this respect, one of proposed techniques has an encoder select one motion vector from a plurality of predicted motion vector candidates, which is presumably the most similar to a current motion vector, and transmits side information for identifying solely whether the selected motion vector is an optimum motion vector. However, the proposed techniques have limitations that result in a decoder crash problem of an error generated in a previous frame disabling reconstructions of the current frame and frames ahead of a next intra frame and the increase of the computational load on the decoder.
Accordingly, there have been proposed methods of determining the is current block motion vector by using motion vectors around the current block to be encoded. The methods address the decoder crash problem by efficiently transmitting indexing side information by using the motion vectors of neighboring blocks and selecting a predicted motion vector apart from information on a previous frame. However, since the methods use a limited number of motion vector candidates, the compression performance is disadvantageously limited.